package com.jhd.jiangxi.service;

import com.jhd.jiangxi.vo.JsonForResult;

import java.util.Map;

import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.Header;
import retrofit2.http.Headers;
import retrofit2.http.POST;
import retrofit2.http.QueryMap;

public interface GetVaccineService {
    @Headers({"Content-Type: application/json", "Accept: application/json"})//需要添加头
    @GET("purchaseReceipt/getSuperiorList")//获取上级交货单号
    Call<JsonForResult> getSuperiorList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("pickOrder/checkAllPickOrderByCondition")//审核领用单
    Call<JsonForResult> checkAllPickOrderByCondition(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("scrapOrder/checkAllScrapOrderByCondition")//审核报损单 传deptId和category(报损需要,移库不需要)
    Call<JsonForResult> checkAllScrapOrderByCondition(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("scrapOrder/getVaccineInfoByCodeForPDAScrap")//报损根据code获取疫苗信息,传deptId和code
    Call<JsonForResult> getVaccineInfoByCodeForPDAScrap(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("sysUser/getUserMstList")//获取盘点人列表
    Call<JsonForResult> getUserMstList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("basicData/getSupplyDepartmentList")//获取供货单位列表
    Call<JsonForResult> getSupplyDepartmentList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("purchaseReturn/getPurchaseReturnDtlByMstId")//根据获取的下级退货单号
    Call<JsonForResult> getPurchaseReturnDtlByMstId(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("destroyOutMst/getDestroyOutDtlListByMstId")//根据获取的下级报废单号，获取单号里的详细信息
    Call<JsonForResult> getDestroyOutDtlListByMstId(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("purchaseReturn/getSubordinatePurchaseReturnList")//获取下级家伙单列表
    Call<JsonForResult> getSubordinatePurchaseReturnList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("destroyOutMst/getPeerDestroyOutList")//获取下级报废单列表
    Call<JsonForResult> getPeerDestroyOutList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("allocateDeliveryMst/getAllocateDeliveryDtlListByMstId")//根据id获取调拨入库单号明细
    Call<JsonForResult> getAllocateDeliveryDtlListByMstId(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("recallDeliveryMst/getRecallDeliveryDtlListByMstId")//根据id获取召回入库单号明细
    Call<JsonForResult> getRecallDeliveryDtlListByMstId(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("manufacturesVaccineInfo/checkVaccineStatus")//判断疫苗状态
    Call<JsonForResult> checkVaccineStatus(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("allocateDeliveryMst/getPeerAllocateDeliveryList")//获取调拨入库单列表
    Call<JsonForResult> getPeerAllocateDeliveryList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @GET("recallDeliveryMst/getSubordinateRecallDeliveryList")//获取召回入库单列表
    Call<JsonForResult> getSubordinateRecallDeliveryList(@Header("Authorization") String token, @QueryMap Map<String, String> params);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("purchaseReceipt/savePurchaseReceiptMstAndDtlFromSale")//添加常规入库主副表信息(来源为上级销售)
    Call<JsonForResult> savePurchaseReceiptMstAndDtlFromSale(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("purchaseReceipt/savePurchaseReceiptMstAndDtl")//添加常规入库主副表信息(来源为自制单据)
    Call<JsonForResult> savePurchaseReceiptMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("saleDelivery/saveSaleDeliveryMstAndDtlForPDA")//添加下发出口主副表信息(来源为自制单据)
    Call<JsonForResult> saveSaleDeliveryMstAndDtlForPDA(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("purchaseReturn/savePurchaseReturnMstAndDtlForSourceType")//添加退货出库主副表信息(来源为自制单据)
    Call<JsonForResult> savePurchaseReturnMstAndDtlForSourceType(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("saleReturn/saveSaleReturnMstAndDtlForPDA")//添加退货入库主副表信息
    Call<JsonForResult> saveSaleReturnMstAndDtlForPDA(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("destroyIn/saveDestroyInMstAndDtlForPDA")//添加报废入库主副表信息
    Call<JsonForResult> saveDestroyInMstAndDtlForPDA(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("destroyOutMst/saveDestroyOutMstAndDtl")//添加报废出库主副表信息
    Call<JsonForResult> saveDestroyOutMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("recallDeliveryMst/saveRecallDeliveryMstAndDtl")//添加召回出库主副表信息
    Call<JsonForResult> saveRecallDeliveryMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("allocateDeliveryMst/saveAllocateDeliveryMstAndDtl")//添加调拨出库主副表信息
    Call<JsonForResult> saveAllocateDeliveryMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("damageDeliveryMst/saveDamageDeliveryMstAndDtl")//添加损坏出库主副表信息
    Call<JsonForResult> saveDamageDeliveryMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("spotCheckMst/saveSpotCheckMstAndDtl")//添加抽检出库主副表信息
    Call<JsonForResult> saveSpotCheckMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("destructOutMst/saveDestructOutMstAndDtl")//添加销毁出库主副表信息
    Call<JsonForResult> saveDestructOutMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("scrapOrder/saveScrapOrderMstAndDtlForPDAScrap")//添加退货入库主副表信息
    Call<JsonForResult> saveScrapOrderMstAndDtlForPDAScrap(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("removeOrder/saveRemoveOrderMstAndDtl")//移库保存
    Call<JsonForResult> saveRemoveOrderMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("allocateReceipt/saveAllocateReceiptMstAndDtlForPDA")//添加调拨入库主副表信息
    Call<JsonForResult> saveAllocateReceiptMstAndDtlForPDA(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("giftReceipt/saveGiftReceiptMstAndDtlForPDA")//添加赠品入库主副表信息
    Call<JsonForResult> saveGiftReceiptMstAndDtlForPDA(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("recallReceipt/saveRecallReceiptMstAndDtlForPDA")//添加召回入库主副表信息
    Call<JsonForResult> saveRecallReceiptMstAndDtlForPDA(@Header("Authorization") String token,@Body RequestBody requestBody);
    @Headers({"Content-Type: application/json", "Accept: application/json"})
    @POST("checkOrder/saveCheckOrderMstAndDtl")//盘点保存
    Call<JsonForResult> saveCheckOrderMstAndDtl(@Header("Authorization") String token,@Body RequestBody requestBody);
}
